package com.zhuhjay.common.core.helper;

import com.zhuhjay.common.base.model.domain.LimiterDetail;

/**
 * 把具体的限流逻辑抽离出来, 由上层实现, 因为涉及到具体的业务逻辑(黑名单)
 *
 * @author ZhuHJay
 * @date 2023/8/4 11:20
 */
public interface ApiLimiterHelper {

    /**
     * 限流
     *
     * @param limitKeySuf   限流的key后缀
     * @param detail        限流详细信息
     * @param reason        如果发生限流的原因记录
     */
    void limiter(String limitKeySuf, LimiterDetail detail, String reason);

}
